import 'package:equatable/equatable.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:website.core/core/application/blocs/app_navigator_bloc/models/page_models/account_page_model.dart';
import 'package:website.core/core/domain/entities/user.dart';
import 'package:website.core/footer/presentation/widget/widget.dart';
import 'package:website.core/injection_container.dart' as core_di;
import 'package:website.core/core/presentation/config/widget_config.dart';
import 'package:website.core/core/presentation/theme/theme.dart';
import 'package:website.core/core/presentation/widgets/app_button.dart';
import 'package:website.core/core/presentation/widgets/app_header.dart';
import 'package:website.core/core/presentation/widgets/header_angry_words_pro_compact_button.dart';
import 'package:website.core/core/presentation/widgets/header_angry_words_pro_regular_button.dart';
import 'package:website.core/core/presentation/widgets/header_logo_button.dart';
import 'package:website.core/core/presentation/widgets/header_user_button.dart';
import 'package:website.core/core/presentation/widgets/stateful_wloc.dart';
import 'package:website.core/core/presentation/widgets/wloc_builder.dart';
import 'package:website.home.account/account_overview_fragment/presentation/fragment/fragment.dart';
import 'package:website.home.account/account_page/application/bloc.dart';
import 'package:website.home.account/account_page/presentation/localization/translation.dart';
import 'package:website.home.account/account_page/presentation/theme/theme.dart';
import 'package:website.home.account/payment_method_fragment/presentation/fragment/fragment.dart';
import 'package:website.home.account/purchase_management_fragment/presentation/fragment/fragment.dart';
import 'package:website.home.account/transaction_history_fragment/presentation/fragment/fragment.dart';

part 'view.dart';

part 'wloc.dart';

part 'wloc_state.dart';

part 'wloc_state_factory.dart';

class AccountPage extends StatefulWidget {
  const AccountPage({
    required this.pageModel,
    Key? key,
  }) : super(key: key);

  final AccountPageModel pageModel;

  @override
  State<StatefulWidget> createState() => _AccountPageWloc();
}
